home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / C / Applications / Python 1.3.3 / stdwin / Gen / waskync.c < prev    next >
Text File  |  1995-12-21  |  726b  |  41 lines

  1. /* STDWIN -- ASK YES/NO QUESTIONS. */
  2.  
  3. #include "tools.h"
  4. #include "stdwin.h"
  5.  
  6. /* Ask a yes/no question.
  7.    Return value: yes ==> 1, no ==> 0, cancel (^C) ==> -1.
  8.    Only the first non-blank character of the string typed is checked.
  9.    The 'deflt' parameter is returned when an empty string is typed. */
  10.  
  11. int
  12. waskync(question, def)
  13.     char *question;
  14.     int def;
  15. {
  16.     char buf[100];
  17.     char *p= "";
  18.     
  19.     switch (def) {
  20.     case 1:    p= "Yes"; break;
  21.     case 0: p= "No"; break;
  22.     }
  23.     strcpy(buf, p);
  24.     for (;;) {
  25.         if (!waskstr(question, buf, sizeof buf))
  26.             return -1;
  27.         p= buf;
  28.         while (isspace(*p))
  29.             ++p;
  30.         if (*p == EOS)
  31.             return def;
  32.         switch (*p) {
  33.         case 'y':
  34.         case 'Y':    return 1;
  35.         case 'n':
  36.         case 'N':    return 0;
  37.         }
  38.         wfleep();
  39.     }
  40. }
  41.